package algo;

import java.util.HashSet;

import model.DebateFormat;
import model.Speaker;
import model.SpeakerRole;

class DebateVertex extends Vertex<DebateVertex> {
	public final SpeakerRole role;
	public final int debateNumber;
	public final DebateFormat format;
	public final Speaker speaker;

	public DebateVertex(Speaker speaker) {
		super(SimpleDistribution.SPEAKER_GROUP, new HashSet<DebateVertex>(), speaker.getName());
		this.speaker = speaker;
		role = null;
		debateNumber = -1;
		format = null;
	}

	public DebateVertex(SpeakerRole role, int debateNumber,
			DebateFormat format) {
		super(SimpleDistribution.ROLE_GROUP, new HashSet<DebateVertex>(), (role.getLabel()
				+ ": " + debateNumber));
		this.role = role;
		this.debateNumber = debateNumber;
		this.format = format;
		speaker = null;
	}

	public DebateVertex(DebateVertex v) {
		super (v.group, v.neighbours, v.toString());
		this.role = v.role;
		this.debateNumber = v.debateNumber;
		this.format = v.format;
		this.speaker = v.speaker;
	}

}